package com.hxkj.mapper;

import com.hxkj.domain.po.Notice;
import com.platform.common.domain.annotation.EnableDataSource;
import org.springframework.stereotype.Repository;
import java.util.List;

/**
* 数据库操作接口
*
* @author: chenwei
* @version: 1.0
* @datetime: 2018-06-05 19:32:55
*
*/
@Repository("noticeMapper")
public interface NoticeMapper {

    /**
    *
    * 根据主键查询Notice对象
    *
    * @param noticeId
    * @return Notice对象
    */
    @EnableDataSource("slave")
    Notice selectByPrimaryKey(Long noticeId);

    /**
    *
    * 根据查询条件查询符合条件的Notice对象
    *
    * @param notice
    * @return 符合条件的Notice对象List
    */
    @EnableDataSource("slave")
    List<Notice> select(Notice notice);

    /**
    *
    * 根据主键删除Notice对象
    *
    * @param noticeId
    * @return 影响条件数
    */
    @EnableDataSource("master")
    int deleteByPrimaryKey(Long noticeId);

    /**
    *
    * 根据条件删除符合条件的Notice对象
    *
    * @param notice
    * @return 影响条件数
    */
    @EnableDataSource("master")
    int delete(Notice notice);

    /**
    *
    * 插入Notice对象
    *
    * @param notice
    * @return 影响条件数
    */
    @EnableDataSource("master")
    int insert(Notice notice);

    /**
    *
    * 更新Notice对象
    *
    * @param notice
    * @return 影响条件数
    */
    @EnableDataSource("master")
    int update(Notice notice);

    /**
     * 更新公告是判断更新的公告标题是否已在数据库存在
     * @param notice
     * @return
     */
    @EnableDataSource("slave")
    Notice selectNoticeTitle(Notice notice);
}
